1. Field
One embodiment of the invention relates to an entropy encoding scheme which is called a CABAC (Context-Adaptive Binary Arithmetic Coding) used in H.264/AVC.
2. Description of the Related Art
In recent years, with dramatic development and penetration of broadband Internet, a high-quality communication method is desired. H.264/AVC is an international standard which is noted for a high compression rate. The H.264/AVC employs an entropy encoding scheme called CABAC (Context-Adaptive Binary Arithmetic Coding). Context-Adaptive, i.e., a scheme which adaptively selects an efficient context depending on the surrounding circumstances is employed. In this case, since the CABAC has a very high load on a general-purpose CPU as a characteristic feature, parallel processing is desirably performed.
Patent Document 1 (Jpn. Pat. Appln. KOKAI Publication No. 2005-244503) discloses a technique that, in an image information encoding apparatus which outputs image compression information based on an image encoding scheme such as H.264/AVC, even though necessary vector information or the like of an adjacent block for parallel processing such as pipeline processing cannot be obtained, a high-speed encoding process can be realized by generating and using pseudo information.
However, a conventional art of Patent Document 1 does not disclose the CABAC which is an issue of the present invention. For this reason, even though a person skilled in the art refers to the document, how to achieve high-speed parallel processing of the CABAC cannot be known.
More specifically, in the CABAC processing, since information of an adjacent macro block (to be referred to as an MB hereinafter) is used, a frame must be divided into a plurality of slices to perform parallel processing in the same frame. However, dependence of MBs on a slice boundary is eliminated due to the influence of the division, and for example, as described later with reference to FIG. 6, information of an adjacent MB belonging to another slice cannot be used. As a result, encoding efficiency is deteriorated. Similarly, as described later with reference to FIG. 5, since a probability table must be initialized for every slice, the encoding efficiency is deteriorated.